home *** CD-ROM | disk | FTP | other *** search
/ TOS Silver 2000 / TOS Silver 2000.iso / programm / GNU_C++ / LIB / SRC / GEMLIB38.LZH / a_graf.c < prev    next >
Encoding:
C/C++ Source or Header  |  1998-07-10  |  3.8 KB  |  186 lines

  1. /*
  2.  * Aes graphics library interface
  3.  *
  4.  * ++jrb bammi@cadence.com
  5.  * modified: mj -- ntomczak@vm.ucs.ualberta.ca
  6.  * modified: cf -- felsch@tu-harburg.de
  7.  */
  8. #include "gem.h"
  9.  
  10.  
  11. int graf_dragbox(int Sw, int Sh, int Sx, int Sy, int Bx, int By, int Bw, int Bh, int *Fw, int *Fh)
  12. {
  13.     aes_intin[0] = Sw;
  14.     aes_intin[1] = Sh;
  15.     aes_intin[2] = Sx;
  16.     aes_intin[3] = Sy;
  17.     aes_intin[4] = Bx;
  18.     aes_intin[5] = By;
  19.     aes_intin[6] = Bw;
  20.     aes_intin[7] = Bh;
  21.     aes_control[0] = 71;
  22.     aes_control[1] = 8;
  23.     aes_control[2] = 3;
  24.     aes_control[3] = 0;
  25.     aes_control[4] = 0;
  26.     aes(&aes_params);
  27.     *Fw = aes_intout[1];
  28.     *Fh = aes_intout[2];
  29.     return aes_intout[0];
  30. }
  31.  
  32.  
  33. int graf_growbox(int Sx, int Sy, int Sw, int Sh, int Fx, int Fy, int Fw, int Fh)
  34. {
  35.     aes_intin[0] = Sx;
  36.     aes_intin[1] = Sy;
  37.     aes_intin[2] = Sw;
  38.     aes_intin[3] = Sh;
  39.     aes_intin[4] = Fx;
  40.     aes_intin[5] = Fy;
  41.     aes_intin[6] = Fw;
  42.     aes_intin[7] = Fh;
  43.     aes_control[0] = 73;
  44.     aes_control[1] = 8;
  45.     aes_control[2] = 1;
  46.     aes_control[3] = 0;
  47.     aes_control[4] = 0;
  48.     aes(&aes_params);
  49.     return aes_intout[0];
  50. }
  51.     
  52.     
  53. int graf_handle(int *Wchar, int *Hchar, int *Wbox, int *Hbox)
  54. {
  55.     aes_control[0] = 77;
  56.     aes_control[1] = 0;
  57.     aes_control[2] = 5;
  58.     aes_control[3] = 0;
  59.     aes_control[4] = 0;
  60.     aes(&aes_params);
  61.     *Wchar = aes_intout[1];
  62.     *Hchar = aes_intout[2];
  63.     *Wbox  = aes_intout[3];
  64.     *Hbox  = aes_intout[4];
  65.     return aes_intout[0];
  66. }
  67.     
  68.     
  69. int graf_mbox(int Sw, int Sh, int Sx, int Sy, int Dx, int Dy)
  70. {
  71.     aes_intin[0] = Sw;
  72.     aes_intin[1] = Sh;
  73.     aes_intin[2] = Sx;
  74.     aes_intin[3] = Sy;
  75.     aes_intin[4] = Dx;
  76.     aes_intin[5] = Dy;
  77.     aes_control[0] = 72;
  78.     aes_control[1] = 6;
  79.     aes_control[2] = 1;
  80.     aes_control[3] = 0;
  81.     aes_control[4] = 0;
  82.     aes(&aes_params);
  83.     return aes_intout[0];
  84. }
  85.     
  86.     
  87. int graf_mkstate(int *Mx, int *My, int *ButtonState, int *KeyState)
  88. {
  89.     aes_control[0] = 79;
  90.     aes_control[1] = 0;
  91.     aes_control[2] = 5;
  92.     aes_control[3] = 0;
  93.     aes_control[4] = 0;
  94.     aes(&aes_params);
  95.     *Mx = aes_intout[1];
  96.     *My = aes_intout[2];
  97.     *ButtonState = aes_intout[3];
  98.     *KeyState = aes_intout[4];
  99.     return aes_intout[0];
  100. }
  101.     
  102.     
  103. int graf_mouse(int Form, void *FormAddress)
  104. {
  105.     aes_intin[0]  = Form;
  106.     aes_addrin[0] = (long)FormAddress;
  107.     aes_control[0] = 78;
  108.     aes_control[1] = 1;
  109.     aes_control[2] = 1;
  110.     aes_control[3] = 1;
  111.     aes_control[4] = 0;
  112.     aes(&aes_params);
  113.     return aes_intout[0];
  114. }
  115.     
  116.     
  117. int graf_rubbbox(int Ix,  int Iy, int Iw, int Ih, int *Fw, int *Fh)
  118. {
  119.     aes_intin[0] = Ix;
  120.     aes_intin[1] = Iy;
  121.     aes_intin[2] = Iw;
  122.     aes_intin[3] = Ih;
  123.     aes_control[0] = 70;
  124.     aes_control[1] = 4;
  125.     aes_control[2] = 3;
  126.     aes_control[3] = 0;
  127.     aes_control[4] = 0;
  128.     aes(&aes_params);
  129.     *Fw = aes_intout[1];
  130.     *Fh = aes_intout[2];
  131.     return aes_intout[0];
  132. }
  133.     
  134.     
  135. int graf_shrinkbox(int Fx, int Fy, int Fw, int Fh, int Sx, int Sy, int Sw, int Sh)
  136. {
  137.     aes_intin[0] = Fx;
  138.     aes_intin[1] = Fy;
  139.     aes_intin[2] = Fw;
  140.     aes_intin[3] = Fh;
  141.     aes_intin[4] = Sx;
  142.     aes_intin[5] = Sy;
  143.     aes_intin[6] = Sw;
  144.     aes_intin[7] = Sh;
  145.     aes_control[0] = 74;
  146.     aes_control[1] = 8;
  147.     aes_control[2] = 1;
  148.     aes_control[3] = 0;
  149.     aes_control[4] = 0;
  150.     aes(&aes_params);
  151.     return aes_intout[0];
  152. }
  153.     
  154.     
  155. int graf_slidebox(void *Tree, int Parent, int Object, int Direction)
  156. {
  157.     aes_addrin[0] = (long)Tree;
  158.     aes_intin[0]  = Parent;
  159.     aes_intin[1]  = Object;
  160.     aes_intin[2]  = Direction;
  161.     aes_control[0] = 76;
  162.     aes_control[1] = 3;
  163.     aes_control[2] = 1;
  164.     aes_control[3] = 1;
  165.     aes_control[4] = 0;
  166.     aes(&aes_params);
  167.     return aes_intout[0];
  168. }
  169.     
  170.     
  171. int graf_watchbox(void *Tree, int Object, int InState, int OutState)
  172. {
  173.     aes_addrin[0] = (long)Tree;
  174.     aes_intin[0]  = 0;
  175.     aes_intin[1]  = Object;
  176.     aes_intin[2]  = InState;
  177.     aes_intin[3]  = OutState;
  178.     aes_control[0] = 75;
  179.     aes_control[1] = 4;
  180.     aes_control[2] = 1;
  181.     aes_control[3] = 1;
  182.     aes_control[4] = 0;
  183.     aes(&aes_params);
  184.     return aes_intout[0];
  185. }
  186.